#include<stdio.h>
#include<algorithm>
using namespace std;
const int maxn=1e5+10;
int fa[maxn],p[maxn];
int find(int x)
{
	int a=x;
	while(x!=fa[x])
		x=fa[x];
	while(a!=fa[a]){
		int y=a;
		a=fa[a];
		fa[y]=x;
	}
	return x;
} 
void u(int a,int b)
{
	int fx=find(a);
	int fy=find(b);
	if(fx!=fy)
		fa[fx]=fy;
}
int main()
{
	int n,m;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++)
		fa[i]=i;
	for(int i=1;i<=m;i++){
		int x,y;
		scanf("%d%d",&x,&y);
		u(x,y);
	}
	for(int i=1;i<=n;i++)
		p[find(i)]++;
	for(int i=1;i<=n;i++)
		if(p[i]>0)
			printf("%d ",p[i]);
	return 0;
}
